package br.uniriotec.pssgbd.gerencia.model.dao.impl;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import br.uniriotec.pssgbd.gerencia.model.dao.BasePostgresDAO;
import br.uniriotec.pssgbd.gerencia.model.entidade.Estado;

public class EstadoPostgresDAO extends BasePostgresDAO<Estado>
{
	@Override
	public List<Estado> listar() throws Exception {
		Connection connection = criaConexao(false);
		String sql = "select * from estado";
		PreparedStatement stmt = null;
		ResultSet rs = null;
		Estado estado = null;
		List<Estado> listaEstado = new ArrayList<Estado>();
		try {
			stmt = connection.prepareStatement(sql);
			rs = stmt.executeQuery();
			while (rs.next()) {
				estado = new Estado();
				estado.setIdEstado(rs.getInt("idestado"));
				estado.setNome(rs.getString("nome"));
				listaEstado.add(estado);
				
			}
		} catch (SQLException e) {
			throw e;
		} finally {
			try {
				stmt.close();
				rs.close();
				this.fechaConexao();
			} catch (SQLException e) {
				throw e;
			}

		}
		return listaEstado;
	}

	@Override
	public void incluir(Estado entidade) throws Exception {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void alterar(Estado entidade) throws Exception {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void excluir(Estado entidade) throws Exception {
		// TODO Auto-generated method stub
		
	}

	@Override
	public Estado consultarPorId(Long id) throws Exception {
		// TODO Auto-generated method stub
		return null;
	}
}
